home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / gnu / flex / flexs237.zoo / MISC / Makefile.VMS < prev    next >
Makefile  |  1990-05-24  |  4KB  |  133 lines

  1. ############################ VMS MAKEFILE ##############################
  2. #IMPORTANT:  Before you use this makefile fill in the contents of GNULIB.
  3. #
  4. # Define tools$$exe, tools$$library, and tools$$manual to reflect the 
  5. # locations where you would like to store the executables, library (flex.skel)
  6. # and the manual pages.  These names can be defined at the command line
  7. # prompt:  eg.
  8. #    $ define tools$$exe disk:[dir1.dir2.etc]
  9. #   
  10. # Once these names have been defined the following commands
  11. # can be executed at the command line:
  12. #
  13. #   $ mms install
  14. #   $ mms test
  15. #   $ mms clean
  16. #
  17. # When "mms test" is executed the diff should not show any differences. In fact
  18. # the same effect can be achieved by
  19. #
  20. #   $ mms install, test, clean
  21. #
  22. #  The filename of the the mms description file, i.e., this file,
  23. #  should either be "makefile." or "decrip.mms"
  24. #
  25. # VMS make file for "flex" tool
  26.  
  27. # Redefine the following for your own environment
  28. BIN = tools$$exe
  29. LIB = tools$$library
  30. MAN = tools$$manual
  31. GNULIB = <******directory where you keep alloca.obj and bcopy.obj***>
  32.  
  33. SKELETON_FILE = "DEFAULT_SKELETON_FILE=""$(LIB):FLEX.SKEL"""
  34.  
  35. CCFLAGS = VMS,USG
  36. FLEX_FLAGS = -is
  37.  
  38. FLEXOBJS = ccl.obj dfa.obj ecs.obj gen.obj main.obj misc.obj nfa.obj  -
  39.            parse.obj scan.obj sym.obj tblcmp.obj yylex.obj 
  40.  
  41. OBJ = ccl.obj,dfa.obj,ecs.obj,gen.obj,main.obj,misc.obj,nfa.obj,parse.obj, -
  42.       scan.obj,sym.obj,tblcmp.obj,yylex.obj
  43.  
  44. default : flex
  45.     ! installed FLEX
  46.  
  47. install : lib man bin 
  48.     !Installed FLEX and LIBRARIES
  49.  
  50. lib : $(LIB):flex.skel
  51.     ! Installed $(LIB):flex.skel
  52.  
  53. bin : $(BIN):flex.exe
  54.     flex :== $ $(BIN):flex.exe
  55.  
  56. man : $(MAN):flex.doc
  57.     ! installed $(MAN):flex.doc
  58.  
  59. $(LIB):flex.skel : flex.skel
  60.     copy flex.skel $(LIB):flex.skel
  61. $(BIN):flex.exe : flex.exe
  62.     copy flex.exe $(BIN):flex.exe
  63. $(MAN):flex.doc : flex.1
  64.     copy flex.1 $(MAN):flex.doc
  65.  
  66. flex : flex.exe
  67.     copy flex.exe $(BIN):flex.exe
  68.  
  69. flex.exe : $(FLEXOBJS)
  70.     link /exe=flex.exe -
  71.         $(OBJ),  -
  72.         $(GNULIB)alloca.obj,  -
  73.         $(GNULIB)bcopy.obj
  74.  
  75.  
  76. parse.c : parse.y
  77.     bison/defines/verbose/fixed_outfiles parse.y
  78.     copy y_tab.c parse.c
  79.     del/noconfirm y_tab.c;*
  80.  
  81. parse.h : parse.c
  82.     copy y_tab.h parse.h
  83.     del/noconfirm y_tab.h;*
  84.  
  85. scan.c : initscan.c
  86.     copy initscan.c scan.c
  87.  
  88. ccl.obj : ccl.c flexdef.h
  89.     cc /define=($(CCFLAGS)) ccl.c
  90. dfa.obj : dfa.c flexdef.h
  91.     cc /define=($(CCFLAGS)) dfa.c
  92. ecs.obj : ecs.c flexdef.h
  93.     cc /define=($(CCFLAGS)) ecs.c
  94. gen.obj : gen.c flexdef.h
  95.     cc /define=($(CCFLAGS)) gen.c
  96. main.obj : main.c flexdef.h
  97.     cc /define=($(CCFLAGS),$(SKELETON_FILE)) main.c
  98. misc.obj : misc.c flexdef.h
  99.     cc /define=($(CCFLAGS)) misc.c
  100. nfa.obj : nfa.c flexdef.h
  101.     cc /define=($(CCFLAGS)) nfa.c
  102. parse.obj : parse.c flexdef.h parse.h
  103.     cc /define=($(CCFLAGS)) parse.c
  104. scan.obj : scan.c parse.h flexdef.h
  105.     cc /define=($(CCFLAGS)) scan.c
  106. sym.obj : sym.c flexdef.h
  107.     cc /define=($(CCFLAGS)) sym.c
  108. tblcmp.obj : tblcmp.c flexdef.h
  109.     cc /define=($(CCFLAGS)) tblcmp.c
  110. yylex.obj : yylex.c parse.h flexdef.h
  111.     cc /define=($(CCFLAGS)) yylex.c
  112.  
  113. clean :
  114.     ! Cleaning up by deleting unnecessary object files etc.
  115.     - delete/noconfirm scan.c;*
  116.     - delete/noconfirm parse.c;*
  117.     - delete/noconfirm parse.h;*
  118.     - delete/noconfirm lexyy.c;*
  119.     - delete/noconfirm *.obj;*
  120.     - delete/noconfirm flex*.tmp;*
  121.     - delete/noconfirm y.output;*
  122.     - delete/noconfirm *.diff;*
  123.     - delete/noconfirm y_tab.*;*
  124.     - purge/log
  125.  
  126. test :  $(BIN):flex.exe
  127.     flex :== $ $(BIN):flex.exe
  128.     define tools$$library 'f$environment("default")'
  129.     sho log tool$$library
  130.     flex $(FLEX_FLAGS) scan.l
  131.     diff/out=flex.diff initscan.c lexyy.c
  132.     type/page flex.diff
  133.